package exception;

import java.awt.*;
import java.io.IOException;

/**
 * 子类重写超类含有throws声明异常抛出的方法时，对于throws的重写规则
 */
public class ThrowsDemo2 {
    public void doSome()throws IOException, AWTException {}
}

class SubClass extends ThrowsDemo2{
//    public void doSome()throws IOException, AWTException {}

    //子类可以不在抛出任何异常
//    public void doSome(){}

    //子类仅抛出超类方法抛出异常的部分异常
//    public void doSome()throws IOException {}

    //子类可以抛出超类方法声明抛出异常的子类型异常
//    public void doSome()throws FileNotFoundException {}

    //不允许抛出额外异常(超类方法没有声明抛出的，且不存在继承关系的)
//    public void doSome()throws SQLException {}

    //不允许抛出超类方法声明抛出异常的超类型异常
//    public void doSome()throws Exception {}

}